<?php
/**
 *
 * string 관련 클래스
 *
 */

class utilString
{
    /**
     *
     * html 로 치환
     * @param string $str
     */
    public static function htmlEncode($str)
    {
        return strtr($str, array('&amp;' => '&', '&quot;' => '"', '&#039;' => "'", '&lt;' => '<', '&gt;' => '>'));
    }

    /**
     * 문자열을 UTF형식으로 자릅니다.
     * modify by khlee2 <khlee2@simplexi.com>
     * @param :
     * 		- str : 원본 문자열
     * 		- sFrom : 마지막 컷팅후 마무리 문자
     * 		- iCnt : 자를 문자수
     * @version :1.1
     * @return : 컷스트링된 문자열
     */
    public static function cutString($str, $sFrom, $size) {
        $substr = substr($str, 0, $size * 2);
        $multi_size = preg_match_all('/[\x80-\xff]/', $substr, $multi_chars);

        if ($multi_size > 0)
            $size = $size + intval($multi_size / 3) - 1;

        if (strlen($str) > $size) {
            $str = substr($str, 0, $size);
            $str = preg_replace('/(([\x80-\xff]{3})*?)([\x80-\xff]{0,2})$/', '$1', $str);
            $str .= $sFrom;
        }

        return $str;
    }

}